package com.bingbing.back.mapper;

import com.bingbing.back.dto.MajorInfoDto;
import com.bingbing.back.po.MajorInfo;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

@Mapper
public interface MajorInfoMapper {

    /**
     * 按照给定信息：专业名称、专业层次、专业大类，专业小类，是否人气排序
     * 搜索相应专业
     * @param dto
     * @return
     */
    List<MajorInfo> search(MajorInfoDto dto);

    // 根据本科或专科，返回其包含的大类名称
    List<MajorInfoDto> searchByLevel(String majorLevel);

    // 根据大类名称返回包含的小类名称
    List<MajorInfoDto> searchByClassName(String className);

    // 根据人气值推荐专业
    List<MajorInfo> recommendMajor();

    // 根据dataId搜索具体某个专业
    MajorInfoDto showMajorById(int dataId);

    /**
     * 按照dataId增加majorClout的人气值
     * @param map
     * @return
     */
    int addClout(Map<Integer, Integer> map);
}
